1. Field of the Invention
The invention generally pertains to a method and apparatus for monitoring operation of selected hardware components of a computer system, as the system performs a specified task. More particularly, the invention pertains to a method of the above type wherein one or more upgrades are proposed for a component, in order to improve system performance in carrying out the task. In a useful embodiment pertaining to a method of the above type, multiple proposed upgrades for a component, accompanied by their respective anticipated effects, may be offered for sale over the Internet or the like.
2. Description of the Related Art
Frequently, a user of a computer or data processing system seeks to improve performance of the system in carrying out a specified task. For example, a user may desire to reduce the time required to compile a particular program, such as from a currently required time of 3.0 hours. In a common solution to this problem, the user would first determine that a particular system component was acting as a significant bottleneck or impediment, when the task of interest was being performed. This determination would be based on the skills and insights of the user. After making the determination, the particular component would be replaced with a hardware upgrade. Components typically considered for upgrade in a computer system, in order to improve system operating characteristics, could include RAM or other memory, hard drive storage capacity, and PCI or other data buses. As used herein, the term “upgrade” refers to a hardware component that performs the same function as the system component it is supplementing or replacing, but with substantially greater capability.
Computer systems of the type described above comprise intricate configurations of complex components. As a result, even if a system bottleneck is overcome by the above approach of selecting a hardware component for upgrade, the upgrade may only lead to discovery of a further bottleneck. As an example, it could be determined that the time required to load data into a hard drive would be significantly decreased by replacing a PCI bus with a PCI-X bus. This would seem reasonable, since a PCI-X bus can carry data up to 20 times faster than a PCI bus. However, after upgrading the bus, it might be discovered that the current hard drive component does not load data fast enough to significantly reduce data loading time. This occurs notwithstanding the faster data flow rate provided by the upgraded bus. Accordingly, the best solution would be to upgrade the hard drive component as well. For example, a Redundant Array of Independent Disks (RAID) could be used for the hard drive, to significantly increase the data loading speed.
Therefore, to assist a user in making improvements in a computer system, it would be useful to conduct an analysis of different system components, as the system performs a task of interest. The user could then be provided with a list showing alternative upgrades to one or more of the hardware components, that would improve or enhance various system operating characteristics. Each listed upgrade would usefully be accompanied by a parameter value, which clearly indicated the result to be expected from the particular upgrade. Usefully also, the analysis would not affect or interfere with the system, as it was performing the task of interest.